package leetcode_数组.leetcode_数组的改变和移动;

// 非递减数列
/*
当前数的前一个数和后一个数比较
 */
public class _665 {
    public static void main(String[] args) {
        int[] ints = {3, 4, 2, 3};
        System.out.println(checkPossibility(ints));
    }

    public static boolean checkPossibility(int[] nums) {
        boolean flag = false; // 表示没有改元素
        for (int i = 0; i < nums.length - 1; i++) {
            if (nums[i] > nums[i + 1]) {
                if (flag) {
                    return false;
                }
                if (i == 0) {
                    nums[i] = nums[i + 1];
                } else {
                    if (nums[i - 1] <= nums[i + 1]) {
                        nums[i] = nums[i - 1];
                    } else {
                        nums[i + 1] = nums[i];
                    }
                }
                flag = true;
            }
        }
        return true;
    }

}
